The current state-of-the-art for video encoding is the ITU-T H.264/AVC video coding standard. It defines a number of different profiles for different applications, including the Main profile, Baseline profile and others.
There are a number of standards for encoding/decoding images and videos, including H.264, that use block-based coding processes. In these processes, the image or frame is divided into blocks, typically 4×4 or 8×8, and the blocks are spectrally transformed into coefficients, quantized, and entropy encoded. In many cases, the data being transformed is not the actual pixel data, but is residual data following a prediction operation. Predictions can be intra-frame, i.e. block-to-block within the frame/image, or inter-frame, i.e. between frames (also called motion prediction).
When spectrally transforming residual data, many of these standards prescribe the use of a discrete cosine transform (DCT) or some variant thereon. The resulting DCT coefficients are then quantized using a quantizer that employs a uniform quantization step size, and possibly a dead zone at the center.
A problem that arises with quantization is that it produces a certain degree of quantization distortion. The quantization distortion is almost evenly distributed among the DCT coefficients because uniform quantization is applied; however, once the encoded data is decoded and the pixel data is reconstructed, it is found that the corresponding distortion distribution among the pixels is highly biased. That is, there are higher levels of distortion at the edges of blocks in the pixel domain than in the middle of the blocks. This unevenly distributed distortion in the pixel domain can result in noticeable artifacts.
It would be advantageous to provide for an improved encoder, decoder and method of encoding or decoding.
Similar reference numerals may have been used in different figures to denote similar components.